/**
 * <copyright>
 * </copyright>
 *
 * $Id$
 */
package org.admanager.acmeadmanagement.plugin.acmeadmanagement.util;

import org.admanager.acmeadmanagement.plugin.acmeadmanagement.AcmeadmanagementPackage;
import org.admanager.acmeadmanagement.plugin.acmeadmanagement.Attachment;
import org.admanager.acmeadmanagement.plugin.acmeadmanagement.Binding;
import org.admanager.acmeadmanagement.plugin.acmeadmanagement.CBAPattern;
import org.admanager.acmeadmanagement.plugin.acmeadmanagement.Component;
import org.admanager.acmeadmanagement.plugin.acmeadmanagement.ComponentMapping;
import org.admanager.acmeadmanagement.plugin.acmeadmanagement.ComponentPortMapping;
import org.admanager.acmeadmanagement.plugin.acmeadmanagement.CompositeElement;
import org.admanager.acmeadmanagement.plugin.acmeadmanagement.Connector;
import org.admanager.acmeadmanagement.plugin.acmeadmanagement.ConnectorMapping;
import org.admanager.acmeadmanagement.plugin.acmeadmanagement.ConnectorRoleMapping;
import org.admanager.acmeadmanagement.plugin.acmeadmanagement.Element;
import org.admanager.acmeadmanagement.plugin.acmeadmanagement.Link;
import org.admanager.acmeadmanagement.plugin.acmeadmanagement.MappingRoot;
import org.admanager.acmeadmanagement.plugin.acmeadmanagement.PComponent;
import org.admanager.acmeadmanagement.plugin.acmeadmanagement.PComponentPort;
import org.admanager.acmeadmanagement.plugin.acmeadmanagement.PCompositeElement;
import org.admanager.acmeadmanagement.plugin.acmeadmanagement.PConnector;
import org.admanager.acmeadmanagement.plugin.acmeadmanagement.PConnectorRole;
import org.admanager.acmeadmanagement.plugin.acmeadmanagement.PConstraint;
import org.admanager.acmeadmanagement.plugin.acmeadmanagement.PElement;
import org.admanager.acmeadmanagement.plugin.acmeadmanagement.PMultiplicity;
import org.admanager.acmeadmanagement.plugin.acmeadmanagement.PRole;
import org.admanager.acmeadmanagement.plugin.acmeadmanagement.PSimpleElement;
import org.admanager.acmeadmanagement.plugin.acmeadmanagement.Port;
import org.admanager.acmeadmanagement.plugin.acmeadmanagement.Representation;
import org.admanager.acmeadmanagement.plugin.acmeadmanagement.Role;
import org.admanager.acmeadmanagement.plugin.acmeadmanagement.SimpleElement;

import org.eclipse.emf.common.notify.Adapter;
import org.eclipse.emf.common.notify.Notifier;

import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;

import org.eclipse.emf.ecore.EObject;

/**
 * <!-- begin-user-doc -->
 * The <b>Adapter Factory</b> for the model.
 * It provides an adapter <code>createXXX</code> method for each class of the model.
 * <!-- end-user-doc -->
 * @see org.admanager.acmeadmanagement.plugin.acmeadmanagement.AcmeadmanagementPackage
 * @generated
 */
public class AcmeadmanagementAdapterFactory extends AdapterFactoryImpl {
	/**
	 * The cached model package.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	protected static AcmeadmanagementPackage modelPackage;

	/**
	 * Creates an instance of the adapter factory.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public AcmeadmanagementAdapterFactory() {
		if (modelPackage == null) {
			modelPackage = AcmeadmanagementPackage.eINSTANCE;
		}
	}

	/**
	 * Returns whether this factory is applicable for the type of the object.
	 * <!-- begin-user-doc -->
	 * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
	 * <!-- end-user-doc -->
	 * @return whether this factory is applicable for the type of the object.
	 * @generated
	 */
	public boolean isFactoryForType(Object object) {
		if (object == modelPackage) {
			return true;
		}
		if (object instanceof EObject) {
			return ((EObject)object).eClass().getEPackage() == modelPackage;
		}
		return false;
	}

	/**
	 * The switch that delegates to the <code>createXXX</code> methods.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	protected AcmeadmanagementSwitch modelSwitch =
		new AcmeadmanagementSwitch() {
			public Object casePElement(PElement object) {
				return createPElementAdapter();
			}
			public Object casePRole(PRole object) {
				return createPRoleAdapter();
			}
			public Object casePMultiplicity(PMultiplicity object) {
				return createPMultiplicityAdapter();
			}
			public Object casePConstraint(PConstraint object) {
				return createPConstraintAdapter();
			}
			public Object casePCompositeElement(PCompositeElement object) {
				return createPCompositeElementAdapter();
			}
			public Object casePSimpleElement(PSimpleElement object) {
				return createPSimpleElementAdapter();
			}
			public Object casePComponent(PComponent object) {
				return createPComponentAdapter();
			}
			public Object casePConnector(PConnector object) {
				return createPConnectorAdapter();
			}
			public Object casePComponentPort(PComponentPort object) {
				return createPComponentPortAdapter();
			}
			public Object casePConnectorRole(PConnectorRole object) {
				return createPConnectorRoleAdapter();
			}
			public Object caseCBAPattern(CBAPattern object) {
				return createCBAPatternAdapter();
			}
			public Object caseElement(Element object) {
				return createElementAdapter();
			}
			public Object caseCompositeElement(CompositeElement object) {
				return createCompositeElementAdapter();
			}
			public Object caseSimpleElement(SimpleElement object) {
				return createSimpleElementAdapter();
			}
			public Object caseComponent(Component object) {
				return createComponentAdapter();
			}
			public Object caseConnector(Connector object) {
				return createConnectorAdapter();
			}
			public Object casePort(Port object) {
				return createPortAdapter();
			}
			public Object caseRole(Role object) {
				return createRoleAdapter();
			}
			public Object caseSystem(org.admanager.acmeadmanagement.plugin.acmeadmanagement.System object) {
				return createSystemAdapter();
			}
			public Object caseLink(Link object) {
				return createLinkAdapter();
			}
			public Object caseAttachment(Attachment object) {
				return createAttachmentAdapter();
			}
			public Object caseBinding(Binding object) {
				return createBindingAdapter();
			}
			public Object caseRepresentation(Representation object) {
				return createRepresentationAdapter();
			}
			public Object caseMappingRoot(MappingRoot object) {
				return createMappingRootAdapter();
			}
			public Object caseComponentMapping(ComponentMapping object) {
				return createComponentMappingAdapter();
			}
			public Object caseConnectorMapping(ConnectorMapping object) {
				return createConnectorMappingAdapter();
			}
			public Object caseComponentPortMapping(ComponentPortMapping object) {
				return createComponentPortMappingAdapter();
			}
			public Object caseConnectorRoleMapping(ConnectorRoleMapping object) {
				return createConnectorRoleMappingAdapter();
			}
			public Object defaultCase(EObject object) {
				return createEObjectAdapter();
			}
		};

	/**
	 * Creates an adapter for the <code>target</code>.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param target the object to adapt.
	 * @return the adapter for the <code>target</code>.
	 * @generated
	 */
	public Adapter createAdapter(Notifier target) {
		return (Adapter)modelSwitch.doSwitch((EObject)target);
	}


	/**
	 * Creates a new adapter for an object of class '{@link org.admanager.acmeadmanagement.plugin.acmeadmanagement.PElement <em>PElement</em>}'.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null so that we can easily ignore cases;
	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @see org.admanager.acmeadmanagement.plugin.acmeadmanagement.PElement
	 * @generated
	 */
	public Adapter createPElementAdapter() {
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.admanager.acmeadmanagement.plugin.acmeadmanagement.PRole <em>PRole</em>}'.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null so that we can easily ignore cases;
	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @see org.admanager.acmeadmanagement.plugin.acmeadmanagement.PRole
	 * @generated
	 */
	public Adapter createPRoleAdapter() {
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.admanager.acmeadmanagement.plugin.acmeadmanagement.PMultiplicity <em>PMultiplicity</em>}'.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null so that we can easily ignore cases;
	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @see org.admanager.acmeadmanagement.plugin.acmeadmanagement.PMultiplicity
	 * @generated
	 */
	public Adapter createPMultiplicityAdapter() {
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.admanager.acmeadmanagement.plugin.acmeadmanagement.PConstraint <em>PConstraint</em>}'.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null so that we can easily ignore cases;
	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @see org.admanager.acmeadmanagement.plugin.acmeadmanagement.PConstraint
	 * @generated
	 */
	public Adapter createPConstraintAdapter() {
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.admanager.acmeadmanagement.plugin.acmeadmanagement.PCompositeElement <em>PComposite Element</em>}'.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null so that we can easily ignore cases;
	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @see org.admanager.acmeadmanagement.plugin.acmeadmanagement.PCompositeElement
	 * @generated
	 */
	public Adapter createPCompositeElementAdapter() {
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.admanager.acmeadmanagement.plugin.acmeadmanagement.PSimpleElement <em>PSimple Element</em>}'.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null so that we can easily ignore cases;
	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @see org.admanager.acmeadmanagement.plugin.acmeadmanagement.PSimpleElement
	 * @generated
	 */
	public Adapter createPSimpleElementAdapter() {
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.admanager.acmeadmanagement.plugin.acmeadmanagement.PComponent <em>PComponent</em>}'.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null so that we can easily ignore cases;
	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @see org.admanager.acmeadmanagement.plugin.acmeadmanagement.PComponent
	 * @generated
	 */
	public Adapter createPComponentAdapter() {
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.admanager.acmeadmanagement.plugin.acmeadmanagement.PConnector <em>PConnector</em>}'.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null so that we can easily ignore cases;
	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @see org.admanager.acmeadmanagement.plugin.acmeadmanagement.PConnector
	 * @generated
	 */
	public Adapter createPConnectorAdapter() {
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.admanager.acmeadmanagement.plugin.acmeadmanagement.PComponentPort <em>PComponent Port</em>}'.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null so that we can easily ignore cases;
	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @see org.admanager.acmeadmanagement.plugin.acmeadmanagement.PComponentPort
	 * @generated
	 */
	public Adapter createPComponentPortAdapter() {
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.admanager.acmeadmanagement.plugin.acmeadmanagement.PConnectorRole <em>PConnector Role</em>}'.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null so that we can easily ignore cases;
	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @see org.admanager.acmeadmanagement.plugin.acmeadmanagement.PConnectorRole
	 * @generated
	 */
	public Adapter createPConnectorRoleAdapter() {
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.admanager.acmeadmanagement.plugin.acmeadmanagement.CBAPattern <em>CBA Pattern</em>}'.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null so that we can easily ignore cases;
	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @see org.admanager.acmeadmanagement.plugin.acmeadmanagement.CBAPattern
	 * @generated
	 */
	public Adapter createCBAPatternAdapter() {
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.admanager.acmeadmanagement.plugin.acmeadmanagement.Element <em>Element</em>}'.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null so that we can easily ignore cases;
	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @see org.admanager.acmeadmanagement.plugin.acmeadmanagement.Element
	 * @generated
	 */
	public Adapter createElementAdapter() {
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.admanager.acmeadmanagement.plugin.acmeadmanagement.CompositeElement <em>Composite Element</em>}'.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null so that we can easily ignore cases;
	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @see org.admanager.acmeadmanagement.plugin.acmeadmanagement.CompositeElement
	 * @generated
	 */
	public Adapter createCompositeElementAdapter() {
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.admanager.acmeadmanagement.plugin.acmeadmanagement.SimpleElement <em>Simple Element</em>}'.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null so that we can easily ignore cases;
	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @see org.admanager.acmeadmanagement.plugin.acmeadmanagement.SimpleElement
	 * @generated
	 */
	public Adapter createSimpleElementAdapter() {
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.admanager.acmeadmanagement.plugin.acmeadmanagement.Component <em>Component</em>}'.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null so that we can easily ignore cases;
	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @see org.admanager.acmeadmanagement.plugin.acmeadmanagement.Component
	 * @generated
	 */
	public Adapter createComponentAdapter() {
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.admanager.acmeadmanagement.plugin.acmeadmanagement.Connector <em>Connector</em>}'.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null so that we can easily ignore cases;
	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @see org.admanager.acmeadmanagement.plugin.acmeadmanagement.Connector
	 * @generated
	 */
	public Adapter createConnectorAdapter() {
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.admanager.acmeadmanagement.plugin.acmeadmanagement.Port <em>Port</em>}'.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null so that we can easily ignore cases;
	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @see org.admanager.acmeadmanagement.plugin.acmeadmanagement.Port
	 * @generated
	 */
	public Adapter createPortAdapter() {
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.admanager.acmeadmanagement.plugin.acmeadmanagement.Role <em>Role</em>}'.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null so that we can easily ignore cases;
	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @see org.admanager.acmeadmanagement.plugin.acmeadmanagement.Role
	 * @generated
	 */
	public Adapter createRoleAdapter() {
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.admanager.acmeadmanagement.plugin.acmeadmanagement.System <em>System</em>}'.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null so that we can easily ignore cases;
	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @see org.admanager.acmeadmanagement.plugin.acmeadmanagement.System
	 * @generated
	 */
	public Adapter createSystemAdapter() {
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.admanager.acmeadmanagement.plugin.acmeadmanagement.Link <em>Link</em>}'.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null so that we can easily ignore cases;
	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @see org.admanager.acmeadmanagement.plugin.acmeadmanagement.Link
	 * @generated
	 */
	public Adapter createLinkAdapter() {
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.admanager.acmeadmanagement.plugin.acmeadmanagement.Attachment <em>Attachment</em>}'.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null so that we can easily ignore cases;
	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @see org.admanager.acmeadmanagement.plugin.acmeadmanagement.Attachment
	 * @generated
	 */
	public Adapter createAttachmentAdapter() {
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.admanager.acmeadmanagement.plugin.acmeadmanagement.Binding <em>Binding</em>}'.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null so that we can easily ignore cases;
	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @see org.admanager.acmeadmanagement.plugin.acmeadmanagement.Binding
	 * @generated
	 */
	public Adapter createBindingAdapter() {
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.admanager.acmeadmanagement.plugin.acmeadmanagement.Representation <em>Representation</em>}'.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null so that we can easily ignore cases;
	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @see org.admanager.acmeadmanagement.plugin.acmeadmanagement.Representation
	 * @generated
	 */
	public Adapter createRepresentationAdapter() {
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.admanager.acmeadmanagement.plugin.acmeadmanagement.MappingRoot <em>Mapping Root</em>}'.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null so that we can easily ignore cases;
	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @see org.admanager.acmeadmanagement.plugin.acmeadmanagement.MappingRoot
	 * @generated
	 */
	public Adapter createMappingRootAdapter() {
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.admanager.acmeadmanagement.plugin.acmeadmanagement.ComponentMapping <em>Component Mapping</em>}'.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null so that we can easily ignore cases;
	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @see org.admanager.acmeadmanagement.plugin.acmeadmanagement.ComponentMapping
	 * @generated
	 */
	public Adapter createComponentMappingAdapter() {
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.admanager.acmeadmanagement.plugin.acmeadmanagement.ConnectorMapping <em>Connector Mapping</em>}'.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null so that we can easily ignore cases;
	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @see org.admanager.acmeadmanagement.plugin.acmeadmanagement.ConnectorMapping
	 * @generated
	 */
	public Adapter createConnectorMappingAdapter() {
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.admanager.acmeadmanagement.plugin.acmeadmanagement.ComponentPortMapping <em>Component Port Mapping</em>}'.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null so that we can easily ignore cases;
	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @see org.admanager.acmeadmanagement.plugin.acmeadmanagement.ComponentPortMapping
	 * @generated
	 */
	public Adapter createComponentPortMappingAdapter() {
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.admanager.acmeadmanagement.plugin.acmeadmanagement.ConnectorRoleMapping <em>Connector Role Mapping</em>}'.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null so that we can easily ignore cases;
	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @see org.admanager.acmeadmanagement.plugin.acmeadmanagement.ConnectorRoleMapping
	 * @generated
	 */
	public Adapter createConnectorRoleMappingAdapter() {
		return null;
	}

	/**
	 * Creates a new adapter for the default case.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @generated
	 */
	public Adapter createEObjectAdapter() {
		return null;
	}

} //AcmeadmanagementAdapterFactory
